table of contents
PAPI_destroy_eventset(3) | PAPI | PAPI_destroy_eventset(3) |
NAME¶
PAPI_destroy_eventset, PAPI_cleanup_eventset - empty and destroy an EventSet
SYNOPSIS¶
C Interface
#include <papi.h> int PAPI_cleanup_eventset(int EventSet); int PAPI_destroy_eventset(int *EventSet);
Fortran Interface
#include fpapi.h PAPIF_cleanup_eventset(C_INT EventSet, C_INT check) PAPIF_destroy_eventset(C_INT EventSet, C_INT check)
DESCRIPTION¶
PAPI_cleanup_eventset() removes all events from a PAPI event set and turns off profiling and overflow for all events in the eventset. This can not be called if the EventSet is not stopped.
PAPI_destroy_eventset() deallocates the memory associated with an empty PAPI event set.
ARGUMENTS¶
EventSet -- an integer handle for a PAPI event set as created by PAPI_create_eventset(3).
*EventSet -- a pointer to the integer handle for a PAPI event set as created by PAPI_create_eventset(3). The value pointed to by EventSet is then set to PAPI_NULL on success.
RETURN VALUES¶
On success, this function returns PAPI_OK.
On error, a non-zero error code is returned.
ERRORS¶
- PAPI_EINVAL
- One or more of the arguments is invalid. Attempting to destroy a non-empty event set or passing in a null pointer to be destroyed.
- PAPI_ENOEVST
- The EventSet specified does not exist.
- PAPI_EISRUN
- The EventSet is currently counting events.
- PAPI_EBUG
- Internal error, send mail to ptools-perfapi@ptools.org and complain.
EXAMPLES¶
/* Remove all events in the eventset */ if (PAPI_cleanup_eventset(EventSet) != PAPI_OK)
handle_error(1); /* Free all memory and data structures, EventSet must be empty. */ if (PAPI_destroy_eventset(&EventSet) != PAPI_OK)
handle_error(1);
BUGS¶
If the user has set profile on an event with the PAPI_profil (3) call, then when destroying the EventSet the memory allocated by PAPI_profil (3) will not be freed. The user should turn off profiling on the Events before destroying the EventSet to prevent this behavior.
SEE ALSO¶
PAPI_create_eventset(3), PAPI_add_event(3), PAPI_stop(3), PAPI_profil(3)
September, 2004 | PAPI Programmer's Reference |